#!/bin/sh

# 清理NVIM缓存的Lua编译文件(.luac)

# 设置根目录 - 使用HOME环境变量确保便携性
ROOT_DIR="$HOME"

# 显示开始信息
echo "开始清理Lua编译文件(.luac)..."
echo "指定目录: $ROOT_DIR"
echo "----------------------------------------"

# 使用find命令安全查找并删除.luac文件
# -type f: 只找文件
# -name "*.luac": 只找扩展名为.luac的文件
# -not -path "*node_modules*": 排除node_modules目录
# -not -path "*git*": 排除git相关目录
# -not -path "*tmp*": 排除临时目录
# -delete: 删除找到的文件

FILES_COUNT=$(find "$ROOT_DIR" -type f -name "*.luac" -not -path "*node_modules*" -not -path "*git*" -not -path "*tmp*" | wc -l)

if [ $FILES_COUNT -gt 0 ]; then
    echo "找到 $FILES_COUNT 个.luac文件，开始删除..."
    # 先显示找到的文件列表
    find "$ROOT_DIR" -type f -name "*.luac" -not -path "*node_modules*" -not -path "*git*" -not -path "*tmp*" -print
    
    # 执行删除
    find "$ROOT_DIR" -type f -name "*.luac" -not -path "*node_modules*" -not -path "*git*" -not -path "*tmp*" -delete
    
    echo "----------------------------------------"
    echo "已成功删除 $FILES_COUNT 个.luac文件"
else
    echo "没有找到.luac文件需要删除"
fi

# 额外清理NVIM缓存目录 - 使用sh兼容的方式
nvim_cache_dirs="$ROOT_DIR/files/sim/lazy $ROOT_DIR/files/starter/lazy $ROOT_DIR/files/repos/nvim-data"

for dir in $nvim_cache_dirs; do
    if [ -d "$dir" ]; then
        echo "清理NVIM缓存目录: $dir"
        find "$dir" -type f -name "*.luac" -delete
    fi
done

# 显示完成信息
echo "----------------------------------------"
echo "Lua编译文件清理完成！"
echo "提示: 建议重启Neovim以确保新的配置生效。"
